package com.hydra.auth.service;

import com.hydra.auth.dto.LoginDto;
import com.hydra.auth.dto.TokenDto;
import com.hydra.auth.entity.SysUser;
import lombok.Data;

/**
 * 用户服务的接口
 * @Author Hydra
 * @Date 2022/5/27 13:26
 */
public interface AuthService {

//    /**登录，获取token*/
//    TokenDto login(LoginDto user);
//
//
//    /**临时用户登录*/
//    TokenDto temporaryLogin(temporaryLogin.Input input);
//    interface temporaryLogin {
//        @Data
//        class Input {
//            String code;
//        }
//    }

    /**忘记密码*/
    forgetPassword.Output forgetPassword(forgetPassword.Input input);

    interface forgetPassword{
        @Data
        class Input{
            /**邮箱、或者手机号*/
            String target;
            /**
             * 发送验证码的类型
             * mail: 邮件
             * mobile: 手机
             */
            String type;
            /**验证码*/
            String code;
            /**密码*/
            String password;
            /**二次密码*/
            String passwordAgain;
        }
        @Data
        class Output{
            boolean result;
            String message;
        }
    }

}
